/**
 * 会话相关类型定义
 */

import { Session } from '@prisma/client';

/**
 * 会话设置常量
 */
export const SESSION_COOKIE_NAME = 'session_id';
export const SESSION_EXPIRY_DAYS = 30;
export const VIP_STATUS = {
  NORMAL: 0,
  VIP: 1
};

/**
 * 客户端信息类型
 */
export interface ClientInfo {
  ipAddress?: string;
  userAgent?: string;
  referrer?: string; // 虽然HTTP头是'referer'，但我们在代码中统一使用正确的拼写'referrer'
  deviceType?: string;
}

/**
 * 会话类型（包含Prisma模型Session的所有字段）
 */
export type SessionData = Session;

/**
 * 会话响应类型
 */
export interface SessionResponse {
  sessionId?: string;
  isVip: boolean;
  isNew?: boolean;
  error?: string;
} 